.class public Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;
.super Landroid/support/v7/widget/RecyclerView;
.source "TagRecyclerView.java"


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$OnTagChangeListener;,
        Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$TagRecyclerViewAdapter;
    }
.end annotation


# instance fields
.field private mEdgePadding:I

.field private mEnabled:Z

.field private mGravity:I

.field private mLineBasedTagModels:Ljava/util/List;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/List",
            "<",
            "Ljava/util/List",
            "<",
            "Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;",
            ">;>;"
        }
    .end annotation
.end field

.field private mLineSpace:I

.field private mMaxTextWidth:I

.field private mOnTagChangeListener:Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$OnTagChangeListener;

.field private mPaddingBottom:I

.field private mPaddingLeft:I

.field private mPaddingRight:I

.field private mPaddingTop:I

.field private mScreenWidth:I

.field private mTagBackgroundDrawableRes:I

.field private mTagDisableTextColor:I

.field private mTagHeight:I

.field private mTagRecyclerViewAdapter:Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$TagRecyclerViewAdapter;

.field private mTagSpace:I

.field private mTagTextColor:I

.field private mTagTextSize:F


# direct methods
.method public constructor <init>(Landroid/content/Context;)V
    .registers 3
    .param p1, "context"    # Landroid/content/Context;

    .prologue
    .line 48
    invoke-direct {p0, p1}, Landroid/support/v7/widget/RecyclerView;-><init>(Landroid/content/Context;)V

    .line 39
    const/4 v0, 0x1

    iput-boolean v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mEnabled:Z

    .line 43
    new-instance v0, Ljava/util/ArrayList;

    invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V

    iput-object v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mLineBasedTagModels:Ljava/util/List;

    .line 49
    invoke-direct {p0, p1}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->initDefault(Landroid/content/Context;)V

    .line 50
    return-void
.end method

.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
    .registers 4
    .param p1, "context"    # Landroid/content/Context;
    .param p2, "attrs"    # Landroid/util/AttributeSet;

    .prologue
    .line 53
    invoke-direct {p0, p1, p2}, Landroid/support/v7/widget/RecyclerView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V

    .line 39
    const/4 v0, 0x1

    iput-boolean v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mEnabled:Z

    .line 43
    new-instance v0, Ljava/util/ArrayList;

    invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V

    iput-object v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mLineBasedTagModels:Ljava/util/List;

    .line 54
    invoke-direct {p0, p1, p2}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->init(Landroid/content/Context;Landroid/util/AttributeSet;)V

    .line 55
    return-void
.end method

.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
    .registers 5
    .param p1, "context"    # Landroid/content/Context;
    .param p2, "attrs"    # Landroid/util/AttributeSet;
    .param p3, "defStyle"    # I

    .prologue
    .line 58
    invoke-direct {p0, p1, p2, p3}, Landroid/support/v7/widget/RecyclerView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V

    .line 39
    const/4 v0, 0x1

    iput-boolean v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mEnabled:Z

    .line 43
    new-instance v0, Ljava/util/ArrayList;

    invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V

    iput-object v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mLineBasedTagModels:Ljava/util/List;

    .line 59
    invoke-direct {p0, p1, p2}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->init(Landroid/content/Context;Landroid/util/AttributeSet;)V

    .line 60
    return-void
.end method

.method static synthetic access$100(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)I
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mEdgePadding:I

    return v0
.end method

.method static synthetic access$1000(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)I
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagTextColor:I

    return v0
.end method

.method static synthetic access$1100(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)I
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagDisableTextColor:I

    return v0
.end method

.method static synthetic access$1200(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)I
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagBackgroundDrawableRes:I

    return v0
.end method

.method static synthetic access$1300(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)I
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagHeight:I

    return v0
.end method

.method static synthetic access$1400(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)I
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagSpace:I

    return v0
.end method

.method static synthetic access$1500(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)I
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mPaddingLeft:I

    return v0
.end method

.method static synthetic access$1600(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)I
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mPaddingTop:I

    return v0
.end method

.method static synthetic access$1700(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)I
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mPaddingRight:I

    return v0
.end method

.method static synthetic access$1800(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)I
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mPaddingBottom:I

    return v0
.end method

.method static synthetic access$200(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)I
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mLineSpace:I

    return v0
.end method

.method static synthetic access$300(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)I
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mScreenWidth:I

    return v0
.end method

.method static synthetic access$400(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)I
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mGravity:I

    return v0
.end method

.method static synthetic access$500(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)Ljava/util/List;
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget-object v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mLineBasedTagModels:Ljava/util/List;

    return-object v0
.end method

.method static synthetic access$600(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$OnTagChangeListener;
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget-object v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mOnTagChangeListener:Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$OnTagChangeListener;

    return-object v0
.end method

.method static synthetic access$700(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)F
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    invoke-direct {p0}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->getTagLines()F

    move-result v0

    return v0
.end method

.method static synthetic access$800(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)F
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagTextSize:F

    return v0
.end method

.method static synthetic access$900(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)Z
    .registers 2
    .param p0, "x0"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;

    .prologue
    .line 28
    iget-boolean v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mEnabled:Z

    return v0
.end method

.method private calculateLineBaseTagModels(Ljava/util/List;)V
    .registers 12
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/List",
            "<",
            "Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;",
            ">;)V"
        }
    .end annotation

    .prologue
    .local p1, "list":Ljava/util/List;, "Ljava/util/List<Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;>;"
    const/4 v9, 0x0

    .line 211
    new-instance v2, Ljava/util/ArrayList;

    invoke-direct {v2}, Ljava/util/ArrayList;-><init>()V

    .line 212
    .local v2, "models":Ljava/util/List;, "Ljava/util/List<Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;>;"
    iget-object v6, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mLineBasedTagModels:Ljava/util/List;

    invoke-interface {v6, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    .line 214
    iget v6, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mScreenWidth:I

    iget v7, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mEdgePadding:I

    mul-int/lit8 v7, v7, 0x2

    sub-int v1, v6, v7

    .line 215
    .local v1, "maxWidth":I
    const/4 v0, 0x0

    .line 216
    .local v0, "lineWidthAccumulate":I
    invoke-interface {p1}, Ljava/util/List;->iterator()Ljava/util/Iterator;

    move-result-object v6

    :goto_18
    invoke-interface {v6}, Ljava/util/Iterator;->hasNext()Z

    move-result v7

    if-eqz v7, :cond_52

    invoke-interface {v6}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v3

    check-cast v3, Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;

    .line 217
    .local v3, "tagModel":Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;
    iget-object v7, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagRecyclerViewAdapter:Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$TagRecyclerViewAdapter;

    # invokes: Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$TagRecyclerViewAdapter;->createTagView(Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;)Landroid/widget/TextView;
    invoke-static {v7, v3}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$TagRecyclerViewAdapter;->access$000(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$TagRecyclerViewAdapter;Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;)Landroid/widget/TextView;

    move-result-object v4

    .line 218
    .local v4, "textView":Landroid/widget/TextView;
    invoke-virtual {v4, v9, v9}, Landroid/widget/TextView;->measure(II)V

    .line 219
    invoke-virtual {v4}, Landroid/widget/TextView;->getMeasuredWidth()I

    move-result v7

    iget v8, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mMaxTextWidth:I

    invoke-static {v7, v8}, Ljava/lang/Math;->min(II)I

    move-result v5

    .line 220
    .local v5, "width":I
    iput v5, v3, Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;->width:I

    .line 222
    iget v7, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagSpace:I

    add-int/2addr v7, v5

    add-int/2addr v0, v7

    .line 224
    if-le v0, v1, :cond_4e

    .line 225
    new-instance v2, Ljava/util/ArrayList;

    .end local v2    # "models":Ljava/util/List;, "Ljava/util/List<Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;>;"
    invoke-direct {v2}, Ljava/util/ArrayList;-><init>()V

    .line 226
    .restart local v2    # "models":Ljava/util/List;, "Ljava/util/List<Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;>;"
    iget-object v7, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mLineBasedTagModels:Ljava/util/List;

    invoke-interface {v7, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    .line 227
    const/4 v0, 0x0

    .line 228
    iget v7, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagSpace:I

    add-int/2addr v7, v5

    add-int/2addr v0, v7

    .line 230
    :cond_4e
    invoke-interface {v2, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    goto :goto_18

    .line 232
    .end local v3    # "tagModel":Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;
    .end local v4    # "textView":Landroid/widget/TextView;
    .end local v5    # "width":I
    :cond_52
    return-void
.end method

.method private getTagLines()F
    .registers 4

    .prologue
    const/4 v1, 0x0

    .line 198
    iget-object v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mLineBasedTagModels:Ljava/util/List;

    if-nez v0, :cond_7

    move v0, v1

    .line 207
    :goto_6
    return v0

    .line 201
    :cond_7
    iget-object v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mLineBasedTagModels:Ljava/util/List;

    invoke-interface {v0}, Ljava/util/List;->size()I

    move-result v0

    const/4 v2, 0x1

    if-ne v0, v2, :cond_21

    .line 202
    iget-object v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mLineBasedTagModels:Ljava/util/List;

    const/4 v2, 0x0

    invoke-interface {v0, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/util/List;

    invoke-interface {v0}, Ljava/util/List;->isEmpty()Z

    move-result v0

    if-eqz v0, :cond_21

    move v0, v1

    .line 203
    goto :goto_6

    .line 207
    :cond_21
    iget-object v0, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mLineBasedTagModels:Ljava/util/List;

    invoke-interface {v0}, Ljava/util/List;->size()I

    move-result v0

    int-to-float v0, v0

    goto :goto_6
.end method

.method private init(Landroid/content/Context;Landroid/util/AttributeSet;)V
    .registers 7
    .param p1, "context"    # Landroid/content/Context;
    .param p2, "attrs"    # Landroid/util/AttributeSet;

    .prologue
    .line 92
    invoke-direct {p0, p1}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->initDefault(Landroid/content/Context;)V

    .line 94
    sget-object v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance:[I

    invoke-virtual {p1, p2, v1}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;

    move-result-object v0

    .line 95
    .local v0, "typedArray":Landroid/content/res/TypedArray;
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_gravity:I

    invoke-virtual {v0, v1}, Landroid/content/res/TypedArray;->hasValue(I)Z

    move-result v1

    if-eqz v1, :cond_1a

    .line 96
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_gravity:I

    const/4 v2, 0x1

    invoke-virtual {v0, v1, v2}, Landroid/content/res/TypedArray;->getInteger(II)I

    move-result v1

    iput v1, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mGravity:I

    .line 99
    :cond_1a
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_line_space:I

    invoke-virtual {v0, v1}, Landroid/content/res/TypedArray;->hasValue(I)Z

    move-result v1

    if-eqz v1, :cond_34

    .line 100
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_line_space:I

    .line 101
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_line_space:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    .line 100
    invoke-virtual {v0, v1, v2}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I

    move-result v1

    iput v1, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mLineSpace:I

    .line 104
    :cond_34
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_space:I

    invoke-virtual {v0, v1}, Landroid/content/res/TypedArray;->hasValue(I)Z

    move-result v1

    if-eqz v1, :cond_4e

    .line 105
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_space:I

    .line 106
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_tag_space:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    .line 105
    invoke-virtual {v0, v1, v2}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I

    move-result v1

    iput v1, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagSpace:I

    .line 109
    :cond_4e
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_background:I

    invoke-virtual {v0, v1}, Landroid/content/res/TypedArray;->hasValue(I)Z

    move-result v1

    if-eqz v1, :cond_60

    .line 110
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_background:I

    sget v2, Lcom/zuimeia/ui/R$drawable;->tag_default_bg_selector:I

    invoke-virtual {v0, v1, v2}, Landroid/content/res/TypedArray;->getResourceId(II)I

    move-result v1

    iput v1, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagBackgroundDrawableRes:I

    .line 114
    :cond_60
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_height:I

    invoke-virtual {v0, v1}, Landroid/content/res/TypedArray;->hasValue(I)Z

    move-result v1

    if-eqz v1, :cond_7a

    .line 115
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_height:I

    .line 116
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_tag_height:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    .line 115
    invoke-virtual {v0, v1, v2}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I

    move-result v1

    iput v1, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagHeight:I

    .line 119
    :cond_7a
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_padding_left:I

    invoke-virtual {v0, v1}, Landroid/content/res/TypedArray;->hasValue(I)Z

    move-result v1

    if-eqz v1, :cond_94

    .line 120
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_padding_left:I

    .line 121
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_padding_left:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    .line 120
    invoke-virtual {v0, v1, v2}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I

    move-result v1

    iput v1, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mPaddingLeft:I

    .line 124
    :cond_94
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_padding_right:I

    invoke-virtual {v0, v1}, Landroid/content/res/TypedArray;->hasValue(I)Z

    move-result v1

    if-eqz v1, :cond_ae

    .line 125
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_padding_right:I

    .line 126
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_padding_right:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    .line 125
    invoke-virtual {v0, v1, v2}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I

    move-result v1

    iput v1, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mPaddingRight:I

    .line 129
    :cond_ae
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_padding_top:I

    invoke-virtual {v0, v1}, Landroid/content/res/TypedArray;->hasValue(I)Z

    move-result v1

    if-eqz v1, :cond_c8

    .line 130
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_padding_top:I

    .line 131
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_padding_top:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    .line 130
    invoke-virtual {v0, v1, v2}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I

    move-result v1

    iput v1, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mPaddingTop:I

    .line 134
    :cond_c8
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_padding_bottom:I

    invoke-virtual {v0, v1}, Landroid/content/res/TypedArray;->hasValue(I)Z

    move-result v1

    if-eqz v1, :cond_e2

    .line 135
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_padding_bottom:I

    .line 136
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_padding_bottom:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    .line 135
    invoke-virtual {v0, v1, v2}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I

    move-result v1

    iput v1, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mPaddingBottom:I

    .line 139
    :cond_e2
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_text_size:I

    invoke-virtual {v0, v1}, Landroid/content/res/TypedArray;->hasValue(I)Z

    move-result v1

    if-eqz v1, :cond_fd

    .line 140
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_text_size:I

    .line 141
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_text_size:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    .line 140
    invoke-virtual {v0, v1, v2}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I

    move-result v1

    int-to-float v1, v1

    iput v1, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagTextSize:F

    .line 144
    :cond_fd
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_text_color:I

    invoke-virtual {v0, v1}, Landroid/content/res/TypedArray;->hasValue(I)Z

    move-result v1

    if-eqz v1, :cond_10f

    .line 145
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_text_color:I

    sget v2, Lcom/zuimeia/ui/R$color;->tag_default_text_color:I

    invoke-virtual {v0, v1, v2}, Landroid/content/res/TypedArray;->getResourceId(II)I

    move-result v1

    iput v1, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagTextColor:I

    .line 149
    :cond_10f
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_disable_text_color:I

    invoke-virtual {v0, v1}, Landroid/content/res/TypedArray;->hasValue(I)Z

    move-result v1

    if-eqz v1, :cond_121

    .line 150
    sget v1, Lcom/zuimeia/ui/R$styleable;->TagEnhance_tag_view_tag_disable_text_color:I

    sget v2, Lcom/zuimeia/ui/R$color;->tag_default_disable_text_color:I

    invoke-virtual {v0, v1, v2}, Landroid/content/res/TypedArray;->getResourceId(II)I

    move-result v1

    iput v1, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagDisableTextColor:I

    .line 154
    :cond_121
    invoke-virtual {v0}, Landroid/content/res/TypedArray;->recycle()V

    .line 155
    return-void
.end method

.method private initDefault(Landroid/content/Context;)V
    .registers 6
    .param p1, "context"    # Landroid/content/Context;

    .prologue
    .line 63
    const/4 v2, 0x2

    invoke-virtual {p0, v2}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->setOverScrollMode(I)V

    .line 65
    invoke-virtual {p0, p1}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->getScreenDisplayMetrics(Landroid/content/Context;)Landroid/util/DisplayMetrics;

    move-result-object v0

    .line 66
    .local v0, "dm":Landroid/util/DisplayMetrics;
    iget v2, v0, Landroid/util/DisplayMetrics;->widthPixels:I

    iput v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mScreenWidth:I

    .line 67
    iget v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mScreenWidth:I

    div-int/lit8 v2, v2, 0x2

    iput v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mMaxTextWidth:I

    .line 69
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_edge_padding:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    iput v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mEdgePadding:I

    .line 70
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_tag_height:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    iput v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagHeight:I

    .line 71
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_line_space:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    iput v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mLineSpace:I

    .line 72
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_tag_space:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    iput v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagSpace:I

    .line 73
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_padding_left:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    iput v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mPaddingLeft:I

    .line 74
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_padding_right:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    iput v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mPaddingRight:I

    .line 75
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_padding_top:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    iput v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mPaddingTop:I

    .line 76
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_padding_bottom:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    iput v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mPaddingBottom:I

    .line 77
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$integer;->tag_default_gravity:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getInteger(I)I

    move-result v2

    iput v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mGravity:I

    .line 78
    sget v2, Lcom/zuimeia/ui/R$color;->tag_default_text_color:I

    iput v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagTextColor:I

    .line 79
    sget v2, Lcom/zuimeia/ui/R$color;->tag_default_disable_text_color:I

    iput v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagDisableTextColor:I

    .line 80
    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v2

    sget v3, Lcom/zuimeia/ui/R$dimen;->tag_default_text_size:I

    invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I

    move-result v2

    int-to-float v2, v2

    iput v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagTextSize:F

    .line 81
    sget v2, Lcom/zuimeia/ui/R$drawable;->tag_default_bg_selector:I

    iput v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagBackgroundDrawableRes:I

    .line 83
    new-instance v1, Landroid/support/v7/widget/LinearLayoutManager;

    invoke-direct {v1, p1}, Landroid/support/v7/widget/LinearLayoutManager;-><init>(Landroid/content/Context;)V

    .line 84
    .local v1, "layoutManager":Landroid/support/v7/widget/LinearLayoutManager;
    const/4 v2, 0x1

    invoke-virtual {v1, v2}, Landroid/support/v7/widget/LinearLayoutManager;->setOrientation(I)V

    .line 85
    invoke-virtual {p0, v1}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->setLayoutManager(Landroid/support/v7/widget/RecyclerView$LayoutManager;)V

    .line 87
    new-instance v2, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$TagRecyclerViewAdapter;

    invoke-direct {v2, p0}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$TagRecyclerViewAdapter;-><init>(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;)V

    iput-object v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagRecyclerViewAdapter:Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$TagRecyclerViewAdapter;

    .line 88
    iget-object v2, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagRecyclerViewAdapter:Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$TagRecyclerViewAdapter;

    invoke-virtual {p0, v2}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->setAdapter(Landroid/support/v7/widget/RecyclerView$Adapter;)V

    .line 89
    return-void
.end method


# virtual methods
.method protected getScreenDisplayMetrics(Landroid/content/Context;)Landroid/util/DisplayMetrics;
    .registers 4
    .param p1, "context"    # Landroid/content/Context;

    .prologue
    .line 158
    new-instance v0, Landroid/util/DisplayMetrics;

    invoke-direct {v0}, Landroid/util/DisplayMetrics;-><init>()V

    .line 159
    .local v0, "dm":Landroid/util/DisplayMetrics;
    check-cast p1, Landroid/app/Activity;

    .end local p1    # "context":Landroid/content/Context;
    invoke-virtual {p1}, Landroid/app/Activity;->getWindowManager()Landroid/view/WindowManager;

    move-result-object v1

    invoke-interface {v1}, Landroid/view/WindowManager;->getDefaultDisplay()Landroid/view/Display;

    move-result-object v1

    invoke-virtual {v1, v0}, Landroid/view/Display;->getMetrics(Landroid/util/DisplayMetrics;)V

    .line 160
    return-object v0
.end method

.method public populateData(Ljava/util/List;)V
    .registers 3
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/List",
            "<",
            "Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;",
            ">;)V"
        }
    .end annotation

    .prologue
    .line 172
    .local p1, "list":Ljava/util/List;, "Ljava/util/List<Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;>;"
    const/high16 v0, -0x40800000

    invoke-virtual {p0, p1, v0}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->populateDataForMaxLines(Ljava/util/List;F)V

    .line 173
    return-void
.end method

.method public populateDataForMaxLines(Ljava/util/List;F)V
    .registers 8
    .param p2, "maxLinesToShow"    # F
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/List",
            "<",
            "Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;",
            ">;F)V"
        }
    .end annotation

    .prologue
    .line 180
    .local p1, "list":Ljava/util/List;, "Ljava/util/List<Lcom/zuimeia/ui/tag/enhance/EnhanceTagModel;>;"
    iget-object v3, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mLineBasedTagModels:Ljava/util/List;

    invoke-interface {v3}, Ljava/util/List;->clear()V

    .line 181
    invoke-direct {p0, p1}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->calculateLineBaseTagModels(Ljava/util/List;)V

    .line 183
    invoke-direct {p0}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->getTagLines()F

    move-result v1

    .line 184
    .local v1, "lines":F
    const/high16 v3, -0x40800000

    cmpl-float v3, p2, v3

    if-lez v3, :cond_16

    .line 185
    invoke-static {p2, v1}, Ljava/lang/Math;->min(FF)F

    move-result v1

    .line 188
    :cond_16
    iget v3, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mLineSpace:I

    iget v4, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagHeight:I

    add-int/2addr v3, v4

    int-to-float v3, v3

    mul-float/2addr v3, v1

    float-to-int v0, v3

    .line 189
    .local v0, "height":I
    invoke-virtual {p0}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;

    move-result-object v2

    .line 190
    .local v2, "tagViewLayoutParams":Landroid/view/ViewGroup$LayoutParams;
    iput v0, v2, Landroid/view/ViewGroup$LayoutParams;->height:I

    .line 191
    invoke-virtual {p0, v2}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V

    .line 192
    invoke-virtual {p0}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->requestLayout()V

    .line 194
    iget-object v3, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mTagRecyclerViewAdapter:Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$TagRecyclerViewAdapter;

    invoke-virtual {v3}, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$TagRecyclerViewAdapter;->notifyDataSetChanged()V

    .line 195
    return-void
.end method

.method public setEnabled(Z)V
    .registers 2
    .param p1, "enabled"    # Z

    .prologue
    .line 168
    iput-boolean p1, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mEnabled:Z

    .line 169
    return-void
.end method

.method public setOnTagChangeListener(Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$OnTagChangeListener;)V
    .registers 2
    .param p1, "onTagChangeListener"    # Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$OnTagChangeListener;

    .prologue
    .line 164
    iput-object p1, p0, Lcom/zuimeia/ui/tag/enhance/TagRecyclerView;->mOnTagChangeListener:Lcom/zuimeia/ui/tag/enhance/TagRecyclerView$OnTagChangeListener;

    .line 165
    return-void
.end method
